#include <stdio.h>
#include <stdlib.h>

#define kMaxSize 10000
#define NIL -1
typedef int ElemSet;

typedef int Position; /* 整型下标，表示元素的位置 */
typedef struct ListNode *List;
struct ListNode {
    ElemSet data[kMaxSize]; /* 存储数据的数组 */
    Position last; /* 线性表中最后一个元素在数组中的位置 */
};

/* 算法2-3：从顺序表list中删除第i个元素  Remove (list, i) */
void Remove(List list, Position i) {
    /* 注意i代表位序，从1开始，不是数组下标 */
    int j;

    if ((i < 1)
            || (i > (list->last + 1))) { /* 检查空表及删除位置的合法性 */
        printf("错误：不存在这个元素。\n");
        return;
    }
    for (j = i; j <= list->last; j++) {
        list->data[j - 1] =
            list->data[j]; /* 将第i+1个到第n个元素顺序向前移动 */
    }
    list->last--; /* list->last仍指向最后元素 */
}
/* 算法2-3 结束 */

int main(void) {
    int i, n, x;
    List list;

    list = (List)malloc(sizeof(struct ListNode));
    scanf("%d", &n);
    for (i = 0; i < n; i++) {
        scanf("%d", &list->data[i]);
    }
    list->last = n - 1;
    scanf("%d", &i);
    Remove(list, i);
    for (i = 0; i <= list->last; i++) {
        printf("%d ", list->data[i]);
    }
    return 0;
}